#include <stdint.h>
#include <SeeedTouchScreen.h>
#include <TFTv2.h>
#include <SPI.h>
#include <SD.h>
 
#if defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__) // mega
#define YP A2
#define XM A1
#define YM 54
#define XP 57
 
#elif defined(__AVR_ATmega32U4__) //leonardo
#define YP A2
#define XM A1
#define YM 18
#define XP 21
 
#else
#define YP A2
#define XM A1
#define YM 14
#define XP 17
 
#endif
 
//konfigurace
 
TouchScreen ts = TouchScreen(XP, YP, XM, YM);
byte SDpin = 4; 
 
int min_x = 232;
int max_x = 1780;
int min_y = 166;
int max_y = 1826;

Point p; 

//promenne pouzivane ve hre

//0 - uvodni obrazovka, 1 - normalni hra, 2 - prohra, 3 - vyhra
byte stat = 0; 

//pole pro ulozeni hodnot jednotlivych dlazdic plochy
byte plocha[4][4]; 

uint16_t barvy[18]; //pole s hodnotami barev
boolean rewrite_all = true; //prepis cele obrazovky
boolean rewrite_game; //prepis herni plochy
boolean moved; //mlelo se s dlazdicemi?
boolean gEnd; //konec hry?
boolean gWin; //vyhra?

//pomocne promenne
byte added = 0; //kolikrat doslo k secteni dlazdic
byte max_added;
byte len;

File soubor;